// Learn TypeScript:
//  - https://docs.cocos.com/creator/manual/en/scripting/typescript.html
// Learn Attribute:
//  - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html
// Learn life-cycle callbacks:
//  - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html

const {ccclass, property} = cc._decorator;

@ccclass
export default class BaseModule {

    public static _instance: any = null;
    public static getInstance<T>(c: { new(): T }): T {
        if (!this._instance) {
            this._instance = new c();
        }
        return this._instance;
    }


    // update (dt) {}
}
